﻿using System.Collections.Generic;
using System.Threading.Tasks;
using System.Threading;
using SIG.Model.FQAs;
using SIG.Model.Albums;

namespace SIG.Service
{
    public interface IPhotoService : IEntityService<Photo>
    {
        Task<IList<Photo>> GetActiveElementsAync(CancellationToken cancellationToken = default(CancellationToken));
        Photo GetPhotoDetail(int id);
        List<Photo> GetPagedActiveElements(int pageIndex, int pageSize, string keyword, int? albumId, out int totalCount);

      
        List<Photo> GetPagedElements(int pageIndex, int pageSize, string keyword, int? albumId, out int totalCount);

        IEnumerable<Photo> LatesterPhotos(int count);
        IEnumerable<Photo> LatesterPhotos(int count, int categoryId);
    }
}
